Electronic adder using two decarde counters alternately



Dec. 15, 1964 G. G. HoBERG ETAL ELECTRONIC ADDER USING TWO DECADE COUNTERS ALTERNATELY 14 Sheets-Sheet l Original Filed March 4, 1955 JOmHZOO 29m Dec. 15, 1964 G. G. HOBERG ETAL ELECTRONIC ADDER USING TWO DECADE COUNTRS ALTERNATELY 14 Sheets-Sheet 2 Original Filed M arch 4, '1955 Dec. 15, 1964 G. G. HoBERG ETAL ELECTRONIC ADDER USING TWO DECADE COUNTERS ALTERNATELY 14 Sheets-Sheet 3 Original Filed March 4, 1955 Dec. 15, 1964 G. G. HOBERG ETAL ELECTROIC ADDEIR USING TWO DECADE- COUNTERS ALTERNATELY 14 Sheets-Sheet 5 Original Filed March 4, 1955 29m DmJ Omo Y M 3am NON am man man ma m o w25 4% m n m25 AIWW N mm mow Dec. 15, 1964 G. G. HOBERG ETAL 3,161,765

ELECTRONIC ADDER USING TWO DECADE COUNTERS ALTERNATELY Dec. 15, 1964 G. G. HOBERG I-:TAL 3,161,765

ELECTRONIC ADDER USING TWO DECADE COUNTERS ALTERNATELY Original Filed March 4, 1955 I 14 Sheets-Sheet 7 A-REGISTER Q 5 g Q AND g I@ 5 SHIFT j g D CONTROL I w f D D D Is-27e g O 48-274 I EFT RIGHT No 275 LEFT SHIFT SHIFT SHIFT OTHER STATES SHIFT 48-273 V PATH I4 DIGITS LONG g I 12B-22| No A DELAY SHIFT V PATH lI3 DIGITS LONG RIGHT [l-AY 23222 SHIFT T A PATH A I2 DIGITS LONG STARTING TIME TERMINATION TIME (AFTER LEFT SHIFT) FIC-L7 Dec- 15, 1964 G. G. HOBERG ETAL ELECTRONIC ADDER USING TWO DECADE COUNTERS ALTERNATELY 14 Sheets-Sheet 8 Original Filed March 4, 1955 Dec- 15, 1964 G. G. HOBERG ETAL ELECTRONIC ADDER USING TWO DECADE COUNTERS ALTERNATELY 14 Sheets-Sheet 10 Original Filed March 4, l1955 Dea 15, 1964 G. G. HOBERG ETAL 3,161,765

ELECTRONIC ADDER USING Two DECADE couNTERs ALTERNATELY 14 Sheets-Sheet l1 Original Filed March 4, 1955 G. G. HOBERG' ETAL ELECTRONIC ADDER USING TWO DECADE COUNTERS ALTERNATELY 14 Sheets-Sheet l2 Dec. 15, 1964 Original Filed March 4, 1955 De@ 15, 1964 G. G. HOBERG ETAL 3,161,765

ELECTRONIC 'DDER USING TWO IDECADE COUNTERS lALTERNATELY Original Filed March 4, 1955 14 Sheets-Sheet 13 SRVMU :RIGHT SHIFT CIRCULATION IOOK LEFT SHIFT CIRCULATION 'DD I DI-DIZI NO SHIFT CIRCULATION AR- O DET SLvDV IVZVBVPRV@ ISK 28'3408 GATED LOOP DRUM KEYBD. INPUT DATA AR-I aus

IIK

BR-ONDE-U IIK ACCUMULATOR INPUT FIG. I4

Dec, 15, 1964 G. G. HOBERG ETAL 3,161,765

ELECTRONIC ADDER USING TWO DECADE COUNTERS ALTERNATELY Original Filed March 4, 1955 14 Sheets-Sheet 14 ACCU MULATOR COUNTER DELAY I IOK ISK

SET A04 RESET AD4 GATED lNPUT 2 297 RESET A03 United States Patent O 3,161,765 ELECTRGNEC ADEER EISEN@ TWG CUNTFJRS LTERN'IELY George G. Hoher-g, Devon, Pa., .lohn il. Van Andel, Dearn horn, Mich., and Edward W. Weitch, Rosemont, lia., assignors to Burroughs Corporation, Detroit, Mich., a corporation of Michigan @riginal application Mar. 4i, i955, Ser. No. 492,662, new Patent No. 3,953,449, dated Sept. ll, i963. Divided and this application Apr. Ztl, lidll, Ser. No. liilid Z3 Claims. (Cl. 2351-176) This invention relates to electronic computers and more particularly to the arithmetic system of a general-purpose computer. This application is a division of the co-penda ing application for patent, Serial No. 492,062, led March 4, 1955, by George G. Hoberg et al. for an Electronic Computer System, now Patent No. 3,053,449, and assigned to the same assignee as the present application. ln the Electronic Computer System of the parent application, a highly ileXible general-purpose computer is disclosed which includes the present invention and its interconnections into a complete computer system. The entire aboveaidentilied parent application is hereby incorporated as forming a part of the description of the present invention.

In general, electronic arithmetic systems are designed to perform the sole operation of adding two numbers. When it becomes necessary to subtract, multiply or divide, the arithmetic system essentially performs in the same manner as a basic adder system. Ordinarily, arithmetic systems store the sign of the digits being operated upon with the digits in the adder. Should the sum or result in the adder be in a negative form, the adder sum or result must be complemented if a positive sum tis desired. Serial adders are generally provided with means for sensing an overflow to indicate improper operation. ln order to per-k form correctly such serial adders must arrange a larger' minuend digit than the subtrahend digit if the adder is to avoid sensing overilows caused by correct operations. Serial adders may compare the magnitudes of the minuend and subtrahend after an overflow has occurred to determine if the overllow was proper, but in either case a separate and distinct operation of sensing the relative digit magnitudes is required. Generally serial pulse count adders require at least one stage of adder for all digits to be added in order to add one digit from the addend to a sequentially presented digit from the augend thus requiring two digit times in each of the adder. In such adders the digits are not fed into the pulse count adder simultaneously or during the same digit time.

Prior art carry registers were part of the adder and were not used as a part of the complement control means to indicate correct arithmetic operations when the adder was purposely caused to overllow, nor was a single carry register common to two stages of an adder.

It is, therefore, an object of this invention to provide a new and improved electronic arithmetic adder for an electronic computer system.

Another object of the invention is to provide a simplified pulse coded arithmetic adder which operates in association with recording recirculating and shifting circuit means.

A further object of the invention is to provide an electronic arithmetic adder which operates as a selective butler storage register, and allows simultaneous entry of digits.

A further object of the invention is to provide an improved adder system which senses the sign of the input digits to determine the sign of the result, and further veries whether or not :the original determination is correct.

A further object of the invention is to provide an improved sign sensing circuit in the adder which automaticalice ly produces a positive magnitude digit and eliminates negative zeros before the digits are sent to storage.

A further object is to provide an improved sign sensing and storing device which cooperates with the carry register of the adder to perform complement control and operational checlr functions.

The adder system of the present invention performs the operation of an arithmetic adder and the further function of a storage register eliminating the need for extra registers ordinarily required during multiplication and division operations. The storage register feature of the adder system is also used as a bulier register when data is being transferred into or out of the system, thus eliminating the need for additional buffer registers.

In the improved arithmetic system the sign of the adder is stored externally in a sensing circuit which performs a complement control function upon the data digits entering the arithmetic system. The sign sensing circuits are further operable to determine Whether or not the sign of the sum or result Ain the arithmetic system is a negative or zero magnitude. Then these circuits control the output from the arithmetic system so that only absolute quantities and positive zeros are sent to the memory storage of the computer system with the correct sign affixed to the digit data.

Accordingly, in a preferred embodiment of the invention there are provided four stages of novel electronic counters operable in pairs to receive and store temporarily the inputs to the adder. One of the input pair of counters is operable to receive pulses representing an augend digit and simultaneously receive interposed pulses representing an addend digit and to store the sum of such input in the form of a partial sum and carry. The other counter of this input pair is operable to receive alternate input digits to the adder. During any arithmetic operation one counter of this first input pair is receiving the input to the adder while simultaneously the other counter o-f the input pair is operable to count out the pulse sum and carry previously received. The second input pair of counters is selectively connected to receive the output of the rst pair of input counters to perform single or double buihng action in the adder system.

Thus, in accordance with this invention there is provided an improved electronic adder circuit for adding a plurality of sequentially presented pulse count decimal digits representing two Words, including two decimal counters, means for storing alternate decimal digits presented in sequence throughout the duration of :the words into respective ones of the counters, and means lfor alternately counting out and rccombining in sequence the digits stored in the decimal counters.

A more detailed description of the electronic arithmetic system comprising the present invention follows hereinafter with reference to the accompanying drawings, where- FIGS. la and 1b show in detailed block diagram form the relationship of different functional units of a computer;

FIG. 2 is a logical block diagram of signal processing circuits for stored timing and data information in the computer of FIGS. la and lb;

FIG. 3 is a waveform diagram of timing pulses used in the computer shown 'in FIGS. la and lb for scheduling operation;

FlG. 4 is a schematic circuit of a B register showing input and output logical gates;

FlG. 4a is a circuit diagram of a logical diode buffer gate used throughout the computer;

FIG. 5 is a logical block diagram of the computer state selector circuit;

FIG. 6 is a combined block and waveform diagram of a digit distributor circuit used in the computer;

FIG. 7 is a schematic circuit of the A register showing the logical diode shift control gates;

FIG. 8 is more detailed schematic circuit of the delay elements of FIG. 7 used in conjunction with the accumulator-adder portion of the A register;

FIG. 9 is a more detailed schematic circuit of the counters of FIG. 8 used throughout the computer and showing counter inputs and outputs;

FIG. 10 is a circuit diagram of a dip-flop circuit of the type used throughout the computer and in the first three stages of FIG. `9;

FIG. 11 is a circuit diagram of a fiip-iiop circuit of the type used in the last stage of FIG. 9 and which has a delaysl-ine coupling and a pulse amplifier output;

FIG. 12 is a schematic diagram of the accumulatoradder and sign comparator;

FIG. 13 is a block diagram of the adder control circuits and the accumulator loop;

FIG. 14 is a logical circuit diagram of control inputs to the accumulator loop circuits ot FIG. 13;

FIG. 15 is a logical circuit diagram of inputs to the accumulator counters, alternator ip iiop and carry iiip flop.

In order to set forth a detailed description of a preferred embodiment of the present invention, a portion of the specification and drawings of the computer system comprising the above-identified parent application is utilized in the detailed description of the present invention given herein below. In order to facilitate comparison of circuits throughout the computer, like elements are given similar suffix reference characters. In view of the complexity of the system, descriptive legends are used in connection with some of the figures to enable corresponding circuitry to be compared without detailed reference to the specification. Also sub-headings are used in the specification to more readily direct attention to different sections of the computer system.

Timing Circuits All of the arithmetic operations are timed by means of signals derived from permanently stored timing signals in the memory section 3-78 with circuits located in the read section 3-55 and processed in the timing circuit section 3-56 of FIG. 1a. These timing circuits 3-56 are shown in block diagram form in FIG. 2. The waveforms corresponding to the stored timing signals and the outputs created by the timing circuits 3-56 in FIG. 2 are illustrated in FIG. 3. The block diagram circuits of FIG. 2 are discussed together with timing pulse characteristics of both the raw recorded pulses and those timing pulses derived therefrom as indicated by the waveforms of FIG. 3.

The basic timing track shown diagrammatically in FIG. 3, has 1300 raw timing pulses T spaced at thirteen microsecond intervals which are used to derive pulses for synchronous operation of the computer shown in block diagram form in FIGS. la and 1b at approximate bit frequencies of either 78,000 or 156,000 cycles per second. The raw timing pulses T are used in the basic timing section lil-130 for deriving a series of shaped pulses t, u, rvu, T, U, TvU, and W. The timing and widths of these pulses, together with an indication of the timing of the decimal pulse count notation in the computer system are seen in the waveforms of FIG. 3. From the corresponding letter notation at the output leads of the basic timing section 10-130 each timing signal may be traced back to the basic timing track through the processing circuits. Thus, as an illustration, the raw basic timing pulses T are fed to input W through the two stage tuned amplifier circuit 12-134 to produce a sine wave output signal at terminal C. This terminal C is indicated in FIG. 2 at the output of tuned amplifier iZ-ld. Shaping of the sine Wave signal at terminal C of FIG. 2 is performed by overdriving a biased triode amplifier 12-132. This effectively i converts the sine wave output signal of the intermediate tuned amplifier l2-134 of FIG. 2 to a Shaped wave at the output terminal Y of FIG. 10 of the overdriven shaping amplifier l2-ll32, from which is derived in further circuits the one microsecond wide t and u pulses shown diagrammatically in FIG. 3.

The shaped wave at terminal Y, of FIG. 2, is further processed to produce at the output terminal K the t timing pulse shown in FIG. 2.

To form the u timing pulse, an inverter circuit is used to produce an input signal at lead 13a-1142 to a peaking circuit 113-136 to produce at the output terminal L, 0f FIG. 2, the shaped u' timing waveform. Thus, by utilizing the reverse half cycle of the available shaped sine wave, the t and u clock pulses are caused to be interspersed with each other, as shown in FIG. 3.

The w drum writing signal, FIG. 2, is derived also from the sine wave signal at terminal C. The input, terminal C of FIG. 2, of the overdriven amplifier 12-132 is delayed by means of a suitable phase advancing circuit similar to lid-ldd which produces at terminal R a timing pulse which has a leading edge starting one-half of a microsecond before the corresponding t' pulses. The pulse forming circuit l-ISZ is tuned to produce a one and a half microsecond pulse. The w pulses last for a duration of one and a half microseconds, and are therefore suitable for actuating circuits for writing upon the magnetic drum. In the computer system these wider pulses permit the storage of more energy. The peaker stage 1.3-136 further shapes the w waveform to produce output pulses at terminal M.

The further two microsecond wide clock pulses T and U', FIG. 2, are derived from the sine wave produced at the input terminal C. A cathode follower circuit 114-144 couples the sine wave signal to two separate processing channels for the respective clock pulses T and U'. An inverter circuit it-140 serves to intersperse the U pulses with the T pulses by utilizing a different half cycle of the sine wave input signal. By means of the interposed phase advancing circuits ltd-M6 the sine wave signal is caused to trigger off the overdriven amplifiers 14-132 soon enough to cause the T and U pulses to be derived one microsecond before the beginning of the t and u pulses, respectively, and damped resonant pulse forming circuits ltd-M2 are tuned to produce pulses of two microseconds duration.

Signal Processing Circuits Some of those circuits described in connection with the basic timing processing circuits liti-130 are likewise used for processing the other timing track and data track signals in sections liti-Idil, Iii-152 and liti-17% of FIG. 2. A diiferentiating amplifier lS-ld is used in the memory reading stage of the amplifier circuits in reading sections lil-T150, iti-i512, and lil-17S. Thus, the output pulses are differentiated as applied to the cascade coupled linear amplifier circuit lS-ISS. The pulses are then shaped in the overdriven amplifier 12432.

These shaped signals are further processed through the pulse amplifier circuit ftdas are the signals derived from the -basic timing track as indicated in the pulse amplilier circuit portion iti-161. As is well known, after a pulse has passed through several diode logic stages, inherent circuit delays cause the pulse to be spread out and mis-shaped. Thus, fresh timing of the input signals with an appropriate clock pulse is accomplished by means of the diode an circuit 116-1163.

The various combinations of timing pulses which are necessary at different stages of the computer for proper operation are derived in the and circuits of the processing section iti-F76 of FIG. 2. Since digital information is handled throughout the computer system, the datatracks derive similar shaped pulses in the and circuits lfd-M5 of the data section iti-i173.

The organization of a B register is shown in the logical diagram of FlG. 4. In general, the B register is used during multiplication and division for storing either the multiplicand or divisor word. T he word enters an B register from the accumulator and is recorded l0 times around the B register track so that access may be accomplished within onetenth of the drum rotation. A typical word, as stored upon each drum sector, is indicated by the waveform E19-202. This waveform typiiies the Words stored and used throughout the computer. `As the drum rotates, the first decimal digit DFB, which represents the sign, is presented in each sector. The sign is represented by nine l pulses for negative sign and nine 0 pulses for a positive sign.

Between each digit space, which contains zero to nine recorded bits, is a guard cell so that ten complete recording bit spaces are used for each decimal number. Next in succession after the sign digit DP@ is the least signiiicant digit DPI of the recorded word, which in this illustrative case is a two and is represented therefore by two l pulses in the pulse count notation used throughout the system. Each decimal digit is then read in succession until the most significant digit DPIZ is reached. For all computations the decimal point is fixed between the most significant digit DIIZ and the next most significant digit DPII. Thus, in the B register track of the drum, the same word would be Written in all ten sectors and therefore Would be available at the reading head IQ-Ii@ with a maximum access time of approximately 1.7 milliseconds for a drum revolution of 3600 rpm.

Signals to and from the transducing head ISL-IBS are processed in the read-write circuit section IB-Zlld. Since the information is read out of the B register at T time, a suitable delay means (not shown) is interposed to delay the information 6.5 microseconds to malte it available at U time. Separate output signals go to an accumulator register from the B register for both "0 and l recorded information, as indicated by the notation BR and BR-I. Since the B register is read only during multiplication or division, the or circuit lig-205 produces signals derived from the computer instructions for actuating the output gating circuits IIB-2% and ri-2e? as will be explained in conjunction with FIG. 13. T his or circuit is constructed similar to that shown in FIG. 4e, as are similar or circuits throughout the computer. Thus, by means of a positive pulse at any one or more of the diode anodes of FIG. 4a, the potential at the output terminal is raised due to conduction through the load resistor to the ground terminal. As shown in FIG. 4, the coincidence of either the multiply or the divide instructions with information BR-I or BR-tl from the B register and clock pulses -DE.U which occur at each U time except the sign time UO, produces corresponding output signals which are sent to the accumulator as will be explained in conjunction with FIG. 13. Therefore, during the receipt of clock pulses -DE.U, shown in FIGS. 2 and 3, any recorded B register information, excepting signs, is read out through gates ILP-206 and I9-2tl'7 into the accumulator vin response to a multiply or divide signal received at the input or circuit I9-2tl5.

In order to write upon the B register, FIG. 4, separate circuits are supplied for writing both the l and "0 bits. The input information which appears at IIB-294 is taken from an accumulator loop or A regiester, FIG. 13, as designated by the input notation AR-I and Al-Il. In the partial digit distributor 3-88, FIG. lb, is a flip flop circuit DDI shown in FIG. 6, which is used for distinguishing between the time of occurrence of the sign digit DTi) and numerical digits DTI through DTIZ. Thus, the DDI input signal is used to gate input digits from the A register at the input write gating circuits III-2li@ and y I9-2l9. The sign is separately processed and stored in ti digit time DT@ at the respective Write l and write "0 input leads to the read-write circuits Iii-204.

Information to be Written into the B register is always transferred from the A register, the transfer taking place during state 4. When the B register instruction is set up an instruction signal BR conditions the write circuits I9- Ztl. An instruction signal BR designating the B register Write operation is necessary at the control gate IQ-ZI@ in order to permit writing upon the B register drum track. The computer automatically steps from state 0 to state l, and reads the B register instruction. In coincidence with the B register control instruction BR, the computer must be in state 4 in order to permit Writing upon the drum, as seen in FIG. 4. State 4 starts with the B timing pulse, shown in FIGS. 2 and 3. In order to arrive at state 4 from state l the coincidence of a B timing pulse with a state 1 condition and a B register instruction BR at the state control gate MMIII is used to change the control to state 4. ri'he next B pulse after the end of the full revolution which permits the entire word in the accumulator to be written upon the B drum, utilizes a further state control gate ZIZ to change the computer state to the 0 idling state. Accordingly, state 4 both starts and ends with successive B pulses. The word is written entirely around the B register, and is retained in the accumulator for further use. In this manner information processed in the accumulator loop may be entered upon the B register for use in connection with the multiplication and division computations.

In general, the control of the different computer states is selected by means of three liip liop circuits as shown by the block diagram of FIG. 5. The iiip Hop circuits are designated respectively CNI, CNZ and CN3 and may be constructed in the general manner shown schematically in the hereinafter described circuits of FIG. l0. By presetting the three tiip ilops, hereinafter called the state counter, any one of eight computer operating states may be selected. The conventional diode matrix decoder circuit 2tP-ZI4 is used to separate the eight output signals which are coupled to the respective pulse amplifiers 164B.

The matrix circuit ZG-ZI/i has a plurality of output rows, each coupled to a suitable power terminal by a resistor Ztl-I5 as shown typically for the row O00 for state O. Thus, output signals are produced at each row only upon the coincidence of signals at all of the diode connections to the columns as schematically shown in the matrix by means of circles. Output signals from each output lead may be taken directly for use without pulse amplilication by means of a lead Eil-I6 where desired. rlfhus, the hereinbefore described state control gate 19- ZII in FIG. 4 will serve to establish state 4, during state l of the B register operation, by resetting the ip flop CNI and setting ip iiop CNB to establish an 001 condition. In operation of the state counter only the necessary changes in the iiip liop conditions will be made to change from one state to another. Thus, if the computer was changed from state l to state 4 the only changes in the state selector tlip flops would be the setting of flip flop CNS to its l condition, and resetting the liip flop CNI to its 0 condition. Likewise, the state control gate 19- ZIE in FIG. 4, in returning the computer from state 4 to state 0, would serve only to reset flip liop CNS to its 0 state.

Construction of the partial digital distributor 3-38, which generates pulses DDI and DDI, as described in connection with FIG. 4, is indicated in FIG. 6. The first of the two iiip iiop circuits DDI and DB2 is utilized in order to distinguish between the sign digit time DT@ of each decimal word and the remaining numerical digit times DTI through DTM. The output signal of iiip op DDI is used to provide this information both in the positive sense DDI and negative sense DDI. This flip flop circuit DDI is reset by each word pulse W and is set by the rst digit pulse D after the W pulse in combination with a DDI signal showing that the liip lop circuit is in its reset condition, as controlled by gate 2I-217.

For further machine processing the partial digit distributor also produces an output signal which occurs during the least significant digit time DTi. and the sign time DT@ as accomplished by the flip flop circuit DDZ of FIG. 6. Similarly, this flip op circuit is reset with the word clock pulse W. A control gate 21-213 is used for setting the flip flop when it is in its reset condition DDZ. Thus, in response to a digit timing pulse D arriving when both the DDl and D102 signals are available, the ilip flop circuit DB2 is set to as to be in the rest condition only for the periods DT@ and DTi of two digit pulses D arriving immediately after the Word pulse W.

The accumulator-adder 3-59 together with the shifting circuit 3-61 are shown in logical form in FlG. 7 to indicate the manner of circulation and modification of information picked up at the reading head 22-219 and rewritten by the writing head 212-220. Each word, as stored in the entire accumulator loop, has 12. decimal digits plus an unused sign digit space, one of which is stored in delay 23-222 for normal no-sl1ift operation, and twelve of which are found recorded on the drum surface located between the read and write heads 219 and 22th. The storage of one digit in delay 23-222- permits procession of information about the accumulator loop by direct coupling, in order to provide the shift right operation, bypassing the one digit delay. An additional delay of one digit is incorporated in an alternate circuit path for obtaining shift left sequencing. The result of this latter operation is indicated by the comparison of the two Words located between the read heads at the starting and termination of one period of left shift. Thus, the normal accumulator circulation path is from the read head 22-219 through the normal one digit delay circuit 23-222 through the no-shift path and back to the write head 22-22@ as controlled by a rio-shift input instruction through the or circuit 22-273.

The no-shift signal is derived from computer circuit logic in response to various input conditions at the or circuit 48-2'73, shown in FlG. 14. For example, in FIG. 7, shifting during multiplication is partially done in state 5 with the -DD2 signal identifying digit times DT@ and DTi causing the no-shift signal to be excited at the gate 48-2'74 by way of the rm'xer circuit 434.75. Thus, coincidence with the further control signal SLvSRvMUvDV at gate 274 is required. Likewise, in multiplication, state 6 causes similar action to take place at gate 45t-286 in combination with the DDl signal, which identifies digit times DTll through DTM. The control signal at gate 43-274 is derived from multiply (MU), divide (DV), shift left (SL) or shift right (SR) instructions. More detailed disclosure of this circuitry together with the other states which will cause rio-shift operation as designated by lead 22-275 is found in the detailed logic circuits in FlG. 14 of the diode circuit section 3-91.

Similar operation in response to the shift left and shift right instructions are derived as shown in FIGS. 7, 13 and 14. The mode of circuit operation may be readily deduced from the signal notation and diode switching circuits shown in FIG. 7 and FIG. 14. ln general, throughout the specication in order to simplify the presentation, where the notation and diode logic circuits are clearly disclosed in the drawing, a detailed description of every electrical circuit element is not presented. Logical circuits are described wherever necessary to explain the circuit operation or to enable a similar analysis of other related logical circuits. lt is clear, however, that in the present state of the art, logical circuit diagrams presented herewith are suiicient to explain the operation of the invention described and claimed herein.

As shown in the waveforms of Pi. 3, the drum writing pulses w are formed with a leading edge occurring before that of the corresponding clock pulses t. This serves the purpose in the shift control circuits of FlG. 7 of making the regenerative drum loop head spacing and circuit delay configuration less critical. Because the data recirculates, even` a very small change in delay between the three optional circuit loops will cause enough procession to be built up to cause erroneous circuit operation unless the signals are accurately retimed. Thus, the longer drum writing pulses cause the reading head 219 to produce a wide enough signal to be gated precisely at the desired time so that if the heads are accurately spaced, small variations of delay in the three circuits in either direction will be corrected by the retiming action. By causing the leading edge of the w pulses to occur prior to the timing pulses t, the delay variation tolerance in the shift paths may occur in either direction so that the operation of the regenerative shift control circuits is made reliable without the necessity for strict custom adjustments of delay lines in the respective cricuit paths.

The delay circuits of FIG. '7 are shown in more detailed block diagram form in the embodiment of FlG. 8 which will be explained hereinafter. The delay is obtained in binary counters of the type illustrated in block diagram form in FIG. 9 and which are used throughout the computer. This counter provides a decimal count, with output signals available at terminal L indicated for each count of nine input pulses at terminal T. The input counts at terminal T are always clocked by clock trigger pulses at terminal S. The count is made by means of interconnecting the four iiip flop circuits as shown diagrammatically in FTS. 9. The last stage of the counter shown in PEG. 9 is constructed similar to the stage shown in FlG. 11. This circuit is generally described in the U.S. Patent No. 2,824,961 issued February 25, 1958, to I. O. Paivinen for Decade Counter for Producing an Output at the Count of Nine. In this circuit a complete decimal digit of any magnitude may be stored by presetting the counter to the complement of the digit to be stored so that an output signal at the terminal L will be produced at the proper digit count to identify the stored digit. Since this same basic counter is used in the several different counting circuits of the computer, it is shown in its most general form in FIG. 9 and therefore is provided with four preset terminals N, F, D and B, as well as with a clear terminal H. in the normal cleared or G state caused either by a clear signal at terminal H or by the counter reaching a count of l0, each of the four flip flops is put in the reset condition. in order to preset the cleared counter at any desired count, the respective flip Jiop circuits may be set by signals at the appropriate preset terminals N, F, D and B in any one of its possible counts.

In performing the counting operation, input signals are available at the complement terminals C (FlGS. 9 and l0) of the respective ip op circuits. Thus, the state of the iiip flop is changed by a signal at the complement terminal C regardless of the previous storage condition. input count signals at terminal T are gated by means of the clock pulses at terminal S in the gate circuit Z4- ZSS. Thus, the first count signal `arriving after the counter is cleared produces at the rst counter stage a signal which will transfer that stage from reset to set condition. Since the other three stages are in the reset condition at the arrival of the first count pulse, the signal at the output gate 24-289 as seen at t e lead 24-277 is not passed to the uines count output terminal L. The nines count output is generated at terminal L by a pulse amplifier circuit of the type shown in FIG. 16 in the manner shown in FIG. l1, so that negated output signals are produced at the terminal Z, RG. l1, as Well as the normal nines count signals at terminal L. The input to the pulse amplifier is derived from the output of gate 24S-239. As shown in FIG. 1l, the inputs to gate 24-289 are from the fourth stage and from the irst stage of the counter. The B and H inputs of FlG. 11 are the set and reset terminals of the last stage ip dop of the FIG. 9 counter. The negated output signals are used to inhibit the gate 9 24-2'79 which allows the counter to be cleared at the count of ten.

The output flip iiop is designed basically as shown in FIG. 11 and is described and claimed in the US. Patent No. 2,842,662 issued luly 8, 1958 to R. l'. Williams for Flip Flop Circuits. At the pulse transformer 2e-la7 both the nines count output signal, terminal L, and the output signal 9, terminal Z, are obtained.

In general, the delay circuit 24-285 of FIG. 11 prevents the transmission of the output signal from the gate 24- 289 until after the expiration of the input pulse which causes the switching of the irst ilip ilop to the set condition. Accordingly, the nines output of gate 24-239 does not coincide with the ninth input pulse and therefore does not permit the premature operation of gates 24,-279 and 24-282. The pulse amplier output signal may be connected back into the counter circuit at terminals L and Z. The L and Z terminals of FIG. 11 are the same as L and Z of FIG. 9.

In FIG. 9 the iiip liop output signal at the output lead 2li-286 of the iirst stage will cause switching of the second flip flop stage unless the 9 inhibit signal at terminal Z changes from positive to negative (as occurs at the count of nine). Thus, the transfer path of a switching signal to the second iiip iiop circuit includes the inhibi-t gate 279. The second ip ilop circuit will cause a binary count with its reset output signal complementing the third ip op circuit which is likewise connected in cascade circuit with the fourth ilip flop circuit. Thus, a normal binary count is eected in the four stages in the presence of pulse 9 so that the `fourth iiip iiop circuit is set with the receipt of the eighth input pulse, but an output signal will not be provided at the count of eight at terminal L because of gate 2li-239 where the lead 277 from the first flip flop circuit will not be permissive. When the ninth input counting pulse is received, however, the rst flip flop circuit will be switched to its set condition to produce the required signal at lead 277 without upsetting the fourth ip llop state and provides the 9 output signal at terminal L. Because of the absence of -9 for a count of nine at inhibit gate circuit 279, the binary count of the second state is interrupted `for the next (or tenth) input count, when the first stage is reset. Since the second and third liip flop circuits are in the reset state at this time, the tenth pulse arriving at the input terminal of the fourth stage by way of reset lead 24-223'7 will serve to reset stage four as well as stage one thus returning the entire counter to its cleared condition, and enabling it to perform a further decimal count. Thus, the counting action progresses as shown in the following chart:

Reset -..0000 6 -0110 1 -1000 7 1110 2 0100 8 -0001 3 1100 9 1001 4 0010 10 000() 5 -1010 In general, each of the iirst three stages of the binary counter is a circuit such as that shown in FlG. and the fourth stage is a circuit such as .that shown in FIG. ll. Note that the out-put circuit of the flip op at terminal 285 is coupled to a pulse forming damped inductive circuit 25-284. Thus, no output signal is obtained in either the static set or reset condition of the first three ilip iiop stages, but is obtained only when the initial transition current occurs as the ilip liop is reset. his permits the direct triggering of the counter circuits with pulse waveforms, and produces output pulses which may be used directly in other system circuits.

Thus, the counter circuits of FIG. 8 are caused to provide a one digit delay by storing ten bit pulses or one decimal digit. Count-in requires one digit time and countout can only occur during the following digit time. Counters similar to those shown in FIG. 9 may be preset and counted out without the one digit delay. Circuit construction is simplified by performing addition in the accumulator loop with the same basic counters in which the delay is provided for the shifting operation. The alternator flip liop circuit A134 is provided to cause one counter to be read-out as the alternate counter is read-in. ln general, all of the iiip tlop circuits may be constructed as shown in the embodiment of FIG. l0 where direct current output signals may be taken from cathode circuits of both tubes at respective terminals such as 25-277. The resistive cathode circuit 253-281 produces a static indication of the tube condition rather than the pulsed ou-tput signal produced at terminal 253-286 by the inductive cathode circuit 25-284.

The output terminals of the alternator ADd in FIG. 8 are fed back by cross connections to input gating circuits t9-299 and t9-Still which are actuated by coincident digit clock pulses D to thus provide alternate output signals remaining for the duration between consecutive D pulses, as designated at the two output leads A134 and -AD4. These signals are used to turn to count in alternate decimal digits at the respective counters l and ll, and conversely to enable the counting out of one counter while counting in is taking place at the other coun-ter. More detailed circuit conditions are shown in the diode control circuit section, FIG. 15, where similar reference characters 295-302 are shown to facilitate comparison. in like manner, other logic circuits may be traced through the diode control circuit sections.

The counter circuits of FlG. 8, in order to afford the digit delay interval used in the `accumulator loop, are constructed for a count-in of the decimal digit during one digit time and a count-out at the succeeding digit time. Therefore, separate input gates l.t9-296 and 49- 315 Or 491-298 and 49-316 are respectively provided for count-in and count-out operation for the corresponding counters Il or l. rlhe input gates t9-296 and e9-298 of counters il and l are connected to the alternator terminals AD4 and -AD4 respectively. Every other digit of each input Word which enters the accumulator must be processed through either the upper or lower counting chain, and the digits are thereafter recombined at the output circuits. The same alteration program is effected at the respective counters lll and lV. As before shown in connection with FIG. 7, the cascade connection through two delay circuits 23-222 and 2li-221 is utilized only in order to produce left shift operation, whereas the presentation of output ysignals after a single decimal digit delay permits no-shift operation. It may be seen with the circuit of FIG. 8 that the shift delay is available in such form that it simpliiies the addition process. ln performing addition, provision is made for counting alternate digits into the separate counter circuits l and Il in the manner hereinafter described in connection with FIG. l2. Digit position DP@ in memory contains the sign digit, but in the accumulator loop of FIG. 7 DP@ is left blank and the sign is stored in a iiip ilop circuit ADl, and is handled separately in the sign comparator circui-t Se, FIG. 12, during addition.

The Adder Circuits The adder circuit of FIG. 12 is broken up in four sections; 2960, 291i, 292 and S5 respectively denoting the count-in circuits, count-out circuits, carry and sign comparison circuits. The add instruction AD serves to algebraically add the contents of a specilied memory location to the contents of the accumulator, by means of the adder input lead, FlG. 12, and thereafter leaves the sum in the accumulator. Addition is performed serially by counting bits from two digit sources into a single adder counter (counter I or ll) one bit at a time, and holding any carry signal for addition with the succeeding digit. Digits from the accumulator track are counted in at T time and those coming from the memory or B register are counted in at U time, via a 6.5 microsecond delay, so that the `digit bits maybe interspersed or staggered in time relationship. ri`hus, the counting rate is 156,000

ademen cycles per second or twice the normal bit presentation rate throughout other computer circuits. Digits which are counted into counter I and Il are counted out during the following digit time. To count out of the counter, nine T pulses (-DE.T) are applied to the count input terminal at gates 49-3116 and t9-315 of counters l and II. These pulses continue to advance the counter until it reads 9. The rest of the nine T pulses are then gated through gates 49-368 and 49-3tl7 to form the output digit. Counters I 'and Ii are always advanced to the count of 9 by 9 T pulses (-DE.T) and, when the alternator AD4 is shifted by the next following D pulse, one more pulse will enter one of the Counters from gate 299 or 3%, which will count it to the count of 10, leaving it in the clear condition. When counter l reaches the count of 9, it conditions one of the gate inputs to gate 49-318 and upon the arrival of the th adder input pulse from 419-293, carry flip flop ADS is set. The carry signal is held in flip flop AD3 for presentation with the next succeeding decimal digit at E time through gate t9-3533. As an example of the operation of the `adder counters, consider rst that the alternator AD4, is set to AD4 for digit time DTI. The -two digits to be added are a 4 and a 7. If the 7 is from the accumulator track, it is counted into the adder input, FIG. l2, by seven pulses during seven successive T times, and the 4 is counted into the adder input from the memory during four successive U times interspersed with the T times. Since alternator AD4 is set at AD4, counter Il will receive the eleven input pulses through gate 49-296, leaving counter Il containing a count of 1. As counter Il passes through 9, it conditions one of the input gates to the buffer t9-31rd so that the 10th count reaching counter II will also set the carry flip flop ADS. During the next following digit time starting with a D pulse at alternator AD4, -AD4 activates gate 49-39 and the nine T pulses (NDEI) are applied to gate t9-315 and count through the buffer 49-295 to count counter II up to the 9 condition. When counter II reaches 9, the input H749 inhibits gate t9-315, leaving counter II at the count of 9, and counter H29 activates gate t9-363, allowing the remaining T pulses, which, in this case would be the last T pulse of the nine count, to arrive at gate t9-3% and appear as an output Adder-I. The first D pulse arriving after the -AD4 sets the alternator AD4 and simultaneously clears counter II by applying the 10th count to counter II at the end of the -AD4 condition, as shown a-t gate t9-Sith. During the AD4 condition, the 10th count to counter Il had previously set the AD3 carry flip flop and the D pulse which caused the -AD4 condition which is followed byan E pulse. As seen at gate t9-3533 of RIG. l2, this E pulse during state 4 causes a single carry pulse to arrive as an input to both gates t9-2% and 4929. Since the alternator is now in the -AD4 condition the carry arrives at gates 49-29d, 49-297 and is transmitted into counter I as a carry. Since the E pulse that triggered the carry occurred before the iirst possible T pulse or U pulse at the -adder input, a count of one in the next higher order digit is preset prior to the count-in operation for that digit.

The add instruction AD or subtract instruction SB is necessary to cause the contents of a specified memory location to be added -to the accumulator loop as shown in FIG. 13. Various conditions for providing an adder input signal from the drum or keyboard are shown in the accumulator input circuits of FiGS. i3, 14 and 15. During the addition cycle, the track selection is made during State 1, and the sector address is found during state 2. The actual addition takes place during state 4. By means of the partial digit distributor circuit 3-88 of FIG. 6, the sign of the memory word is read into the ilip flop circuit AD?. during digit time DTtl by gating DDI with state 4 and MEM-1l, the sign of memory. The flip flop circuit ADI already has been conditioned with the sign of the accumulator contents. After the complete sign digit from memory is read-in, and at the tenth bit time of DTtl, complement control flip flop circuit ADZ is set by a D pulse if the signs are opposite and reset if the signs are the same as shown in FIG. l2. Whenever the signs are opposite, the numerical portion of the word from memory is complemented by sending memory Os to the adder instead of memory 1s, as shown in FIG. 13. This produces a 9s complement which is changed to a lOs complement by sending a pre-carry bit E pulse into the adder during the tenth bit time of DTtB, as schematically indicated at the input circuit of the adder 2'7-29G, FlGS. l2 and 13.

During digit times DTI and DTIZ the bits from the accumulator tracks enter the adder input circuit at T time and the bits from the memory enter at U time as indicated respectively by the ga-tes 43E-33S and t3-343, FIGS. 13 and 14. A carry is stored in the llip tlop circuit ADB and is sent to the adder between digits at E time so that it will be added to the next digit. At W time, after addition, hip flop circuits ADZ and ADS are inspected by signals. AD3 indicates an overliow of the MSD, and -AD2 indicates unlike signs. If the signs are the same and there is no carry for a normal operation, which is the case with ADZ and ADB reset, the sum is in absolute value form and the sign of the sum is correct in ADl. In this case the state selector goes to state 0 to Wait for the next instruction indicating that the normal addition is completed. If the signs are opposite and there is a carry, as occurs when AD?. is set and ADS: is set, there has been a proper addition of the complement, and the same situation holds. The state counter goes to 0. However, if the signs are opposite and there is no carry, ADZ and ADS being in the set and reset condition, the sum is in complement form. In this case control changes to state 5, in which the accumulator is complemented as seen inV FGS. 12 and 13, and provided with -a correction precarry signal, as seen in FIGS. 12 and 13. Also the storage state of ADI is changed in state 5 by a W pulse to give the correct sign as well as the absolute value of the sum after which control goes back to state 0. When the signs are the same and there is a carry, with ADZ reset and AD3 set, the number in the accumulator exceeds the capacity of the register. In this case the alarm thyratron circuit is fired. Also the flip flop circuit CN4 which is hereinafter discussed, is reset to prevent the stepping switch `from proceeding to the succeeding instruction and sends the control state to 0. The state 5 complementing operation gates AR- through the adder with a pre-carry which gives the proper lOs complement.

In order to perform the subtract instruction, the operation is entirely identical to the adding operation except that the sign of the word in the memory is complemented as it is sent to the ilip flop circuit ADZ during digit time DT@ by gating -DD11 with state 4 and MEM-tl.

In FIG. 13 the entire accumulator loop is denoted together with the adder of FIG. l2 and its plurali-ty of input conditions. These input conditions may be traced throughout the diode logic control circuits, for example, in FIGS. 14 and 15, where cross referenced identification characters are supplied to facilitate tracing of the circuits. An electronic adder has been described which performs the functions of an arithmetic adder, and which also functions as a storage register thereby eliminating the need for extra registers usually needed during division and multiplication operations. The adder comprising the present invention also contains sign sensing circuits thatdetermine whether the sign of the result of an arithmetic operation is negative or positive.

What is claimed is:

1. An electronic adder circuit for adding a plurality of sequentially presented pulse count coded decimal ydigits comprising a word comprising in combination, two decimal counters, means for storing alternate decimal digits presented in sequence throughout the duration of said word into respective ones of said counters, and means for 

1. AN ELECTRONIC ADDER CIRCUIT FOR ADDING A PLURALITY OF SEQUENTIALLY PRESENTED PULSE COUNT CODED DECIMAL DIGITS COMPRISING A WORD COMPRISING IN COMBINATION, TWO DECIMAL COUNTERS, MEANS FOR STORING ALTERNATE DECIMAL DIGITS PRESENTED IN SEQUENCE THROUGHOUT THE DURATION OF SAID WORD INTO RESPECTIVE ONES OF SAID COUNTERS, AND MEANS FOR ALTERNATELY COUNTING OUT AND RECOMBINING IN SEQUENCE THE DIGITS STORED IN SAID DECIMAL COUNTERS. 